package com.qianli.user.ro.account;

import com.alibaba.fastjson.JSONObject;
import com.qianli.user.enums.ThirdPartLoginTypeEnum;
import com.qianli.user.ro.BaseRO;
import com.qianli.user.ro.app.AppInfoRO;

import java.io.Serializable;
import java.util.List;

/**
 * name:第三方登录信息
 * @author zsp
 */
public class UserThirdPartRO extends BaseRO implements Serializable {

    private static final long serialVersionUID = -4021163690049900537L;
    /**
     * 第三方登录类型
     */
    private ThirdPartLoginTypeEnum loginTypeEnum;
    /**
     * 第三方的userId
     */
    private String openId;
    /**
     * 手机号
     */
    private String mobile;
    /**
     * app 信息
     */
    private AppInfoRO appInfo;
    /**
     * 第三方登录的额外数据
     */
    private JSONObject extraJSON;

    /**
     * user登录的app支持的产品列表
     */
    private List<UserProductCategoryRO> userProductCategoryROList;

    public ThirdPartLoginTypeEnum getLoginTypeEnum() {
        return loginTypeEnum;
    }

    public UserThirdPartRO setLoginTypeEnum(ThirdPartLoginTypeEnum loginTypeEnum) {
        this.loginTypeEnum = loginTypeEnum;
        return this;
    }

    public String getOpenId() {
        return openId;
    }

    public UserThirdPartRO setOpenId(String openId) {
        this.openId = openId;
        return this;
    }

    public String getMobile() {
        return mobile;
    }

    public UserThirdPartRO setMobile(String mobile) {
        this.mobile = mobile;
        return this;
    }

    public AppInfoRO getAppInfo() {
        return appInfo;
    }

    public UserThirdPartRO setAppInfo(AppInfoRO appInfo) {
        this.appInfo = appInfo;
        return this;
    }

    public JSONObject getExtraJSON() {
        return extraJSON;
    }

    public UserThirdPartRO setExtraJSON(JSONObject extraJSON) {
        this.extraJSON = extraJSON;
        return this;
    }

    public List<UserProductCategoryRO> getUserProductCategoryROList() {
        return userProductCategoryROList;
    }

    public UserThirdPartRO setUserProductCategoryROList(List<UserProductCategoryRO> userProductCategoryROList) {
        this.userProductCategoryROList = userProductCategoryROList;
        return this;
    }
}

